package com.hollysys.usersync.feign;

import com.hollysys.usersync.entity.*;
import feign.Headers;
import feign.Param;
import feign.RequestLine;
import org.springframework.validation.annotation.Validated;


/**
 * 用户组织同步服务接口
 *
 * @author Jeremy Yim
 * @date 2022-04-24
 * @deprecated 该接口服务无法满足业务场景
 */
@Validated
@Headers({"Content-Type: application/json", "Accept: application/json"})
public interface PlatSyncServiceInvoker {

//    /**
//     * 同步用户
//     *
//     * @param userList 用户信息列表
//     * @return 添加结果
//     */
//    @RequestLine("POST /dataSync/user")
//    @Headers("Authorization: {token}")
//    Response syncUser(PlatformSyncRequest<User> userList, @Param("token") String token);
//
//    /**
//     * 同步组织
//     *
//     * @param orgList 组织信息列表
//     * @return 添加结果
//     */
//    @RequestLine("POST /dataSync/organization")
//    @Headers("Authorization: {token}")
//    Response syncOrg(PlatformSyncRequest<OrganizationVO> orgList, @Param("token") String token);
//
//    /**
//     * 同步岗位
//     *
//     * @param postList 岗位信息列表
//     * @return 添加结果
//     */
//    @RequestLine("POST /dataSync/post")
//    @Headers("Authorization: {token}")
//    Response syncPost(PlatformSyncRequest<Post> postList, @Param("token") String token);
//
//    /**
//     * 删除指定编码的组织
//     *
//     * @param codes 编码列表（逗号分隔）
//     * @return 删除结果
//     */
//    @RequestLine("DELETE /dataSync/org/datch/delete?orgType=platform_organization&codes={codes}")
//    @Headers("Authorization: {token}")
//    Response deleteOrg(@Param("codes") String codes, @Param("token") String token);
//
//    /**
//     * 删除指定账号的用户
//     *
//     * @param accounts 账号列表（逗号分隔）
//     * @return 删除结果
//     */
//    @RequestLine("DELETE /dataSync/user/batch/freeze?accounts={accounts}")
//    @Headers("Authorization: {token}")
//    Response deleteUser(@Param("accounts") String accounts, @Param("token") String token);
//
//    /**
//     * 删除指定编码的岗位
//     *
//     * @param codes 编码列表（逗号分隔）
//     * @return 删除结果
//     */
//    @RequestLine("DELETE /dataSync/post/batch/delete?codes={codes}")
//    @Headers("Authorization: {token}")
//    Response deletePost(@Param("codes") String codes, @Param("token") String token);

}

